记录kettle spoon.bat 无法启动 (系统找不到指定的路径。) 只有无限接近死亡 才能领悟真滴 |
您所在的位置:网站首页 › 找不到文件 javaw › 记录kettle spoon.bat 无法启动 (系统找不到指定的路径。) 只有无限接近死亡 才能领悟真滴 |
先写解决方案
错误信息
DEBUG: Using value () from calling script
DEBUG: _PENTAHO_JAVA_HOME=
DEBUG: _PENTAHO_JAVA=\bin\javaw.exe
系统找不到指定的路径。
系统找不到指定的路径。
前提,没有在spoon.bat 做任何改变 环境变量中有KETTLE_HOME只想kettle安装目录 将pdi文件夹下的set-pentaho-env.bat中的 (请提前建立文件副本哦) :checkPentahoJavaHome if exist "%~1\bin\%__LAUNCHER%" goto gotValueFromCaller if not "%PENTAHO_JAVA_HOME%" == "" goto gotPentahoJavaHome if exist "%~dp0jre\bin\%__LAUNCHER%" goto gotJreCurrentFolder if exist "%~dp0java\bin\%__LAUNCHER%" goto gotJavaCurrentFolder if exist "%~dp0..\jre\bin\%__LAUNCHER%" goto gotJreOneFolderUp if exist "%~dp0..\java\bin\%__LAUNCHER%" goto gotJavaOneFolderUp if exist "%~dp0..\..\jre\bin\%__LAUNCHER%" goto gotJreTwoFolderUp if exist "%~dp0..\..\java\bin\%__LAUNCHER%" goto gotJavaTwoFolderUp if not "%JAVA_HOME%" == "" goto gotJdkHome if not "%JRE_HOME%" == "" goto gotJreHome # 修改为 :checkPentahoJavaHome if not "%JAVA_HOME%" == "" goto gotJdkHome if not "%JRE_HOME%" == "" goto gotJreHome 在看我瞎比比前提 是我们的项目需要用这个可恶的kettle。 在第一次使用的时候我成功的启动了。 于是乎,在使用一次后,每次,初体验结束,spoon开始抗拒我了。从网上找到无数种解决方案,都无法挽回他,还好一直用服务器上的kettle。知道今天,任务开始没那么多了,我再次想要挽回他。 尝试过的方法有: 卸载所有jdk,重装jdk8 在spoon.bat中设置变量 进入正题,读了spoon.bat中的脚本语言后,发现在spoon.bat中跳转到另一个批处理文件, call "%~dp0set-pentaho-env.bat"这个批处理文件就是为了定位我们的java位置,中间的重重判定有一句有问题,无法定位到我的jdk :checkPentahoJavaHome if exist "%~1\bin\%__LAUNCHER%" goto gotValueFromCaller if not "%PENTAHO_JAVA_HOME%" == "" goto gotPentahoJavaHome if exist "%~dp0jre\bin\%__LAUNCHER%" goto gotJreCurrentFolder if exist "%~dp0java\bin\%__LAUNCHER%" goto gotJavaCurrentFolder if exist "%~dp0..\jre\bin\%__LAUNCHER%" goto gotJreOneFolderUp if exist "%~dp0..\java\bin\%__LAUNCHER%" goto gotJavaOneFolderUp if exist "%~dp0..\..\jre\bin\%__LAUNCHER%" goto gotJreTwoFolderUp if exist "%~dp0..\..\java\bin\%__LAUNCHER%" goto gotJavaTwoFolderUp if not "%JAVA_HOME%" == "" goto gotJdkHome if not "%JRE_HOME%" == "" goto gotJreHome我的很奇怪的定位到了第一个判定也就是gotValueFromCaller中去了,实际上当我们定义了java_home环境变量后,一般是跳进gotJdkHome方法中的。从系统变量中获取值所以我直接把上面的全部删掉了,这样就不会让它判定进入其他分支了。 好的,今天很开心,如果有问题可以提出哦。希望可以帮到你 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |